On the Specialization of Online Program Specializers
نویسندگان
چکیده
Program specializers improve the speed of programs by performing some of the programs' reductions at specialization time rather than at runtime. This specialization process can be time-consuming; one common technique for improving the speed of the specialization of a particular program is to specialize the specializer itself on that program, creating a custom specializer, or program generator, for that particular program. Much research has been devoted to the problem of generating e cient program generators, which do not perform reductions at program generation time which could instead have been performed when the program generator was constructed. The conventional wisdom holds that only o ine program specializers, which use binding time annotations, can be specialized into such e cient program generators. This paper argues that this is not the case, and demonstrates that the specialization of a nontrivial online program specializer similar to the original \naive MIX" can indeed yield an e cient program generator. The key to our argument is that, while the use of binding time information at program generator generation time is necessary for the construction of an e cient custom specializer, the use of explicit binding time approximation techniques is not. This allows us to distinguish the problem at hand (i.e., the use of binding time information during program generator generation) from particular solutions to that problem (i.e., o ine specialization). We show that, given a careful choice of specializer data structures, and su ciently powerful specialization techniques, binding time information can be inferred and utilized without the use of explicit binding time approximation techniques. This allows the construction of e cient, optimizing program generators from online program specializers.
منابع مشابه
Opportunities for Online Partial Evaluation
Partial evaluators can be separated into two classes: o ine specializers, which make all of their reduce/residualize decisions before specialization, and online specializers, which make such decisions during specialization. The choice of which method to use is driven by a tradeo between the e ciency of the specializer and the quality of the residual programs that it produces. Existing research ...
متن کاملGeneralization in Hierarchies of Online Program Specialization Systems
In recent work, we proposed a simple functional language S-graph-n to study metaprogramming aspects of self-applicable online program specialization. The primitives of the language provide support for multiple encodings of programs. An important component of online program specialization is the termination strategy. In this paper we show that such a representation has the great advantage of sim...
متن کاملImproving the Accuracy of Higher-Order Specialization using Control Flow Analysis
We have developed a new technique for computing the argument vectors used to build specializations of rst-class functions. Instead of building these specializations on completely dynamic actual parameters, our technique performs a control ow analysis of the residual program as it is constructed during specialization, and uses the results of this analysis to compute more accurate actual paramete...
متن کاملGenerating Optimizing Specializers
We propose a new method for improving the specialization of programs by inserting an interpreter between a subject program and a specializer. We formulate three specializer projections which enable us to generate specializers from interpreters. The goal is to provide a new way to control the specialization of programs, and we report the first practical results. This is a step towards the automa...
متن کاملA Program Specialization Relation Based on Supercompilation and its Properties
An input-output relation for a wide class of program specializers for a simple functional language in the form of Natural Semantics inference rules is presented. It covers polygenetic specialization, which includes deforestation and supercompilation, and generalizes the author’s previous paper on specification of monogenetic specialization like partial evaluation and restricted supercompilation...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- J. Funct. Program.
دوره 3 شماره
صفحات -
تاریخ انتشار 1993